package ru.dc;

import java.util.Set;

/**
 * Предоставляет доступ к источникам публичных хабов.
 * Источники публичные хабов - списки хабов, размещенные в сети интернет. Список хранится в xml файле
 * hublist.xml, упакованном в bz2 архив.
 *
 * Сервис позволяет добавлять/удалять источники. Список источников сохраняется, т.о. при последующем запуске
 * он будет восстановлен.
 */
public interface PublicHubsService {

    /**
     * Добавляет источник публичных хабов.
      * @param url адрес источника
     */
    public void addSourceUrl(String url);

    /**
     * Заменяет список источников указанным списоком.
     * @param url адреса источников публичных хабов
     */
    public void setSourceUrls(String... url);

    /**
     * Удаляет источник публичных хабов.
     * @param url ажрес источника
     */
    public void removeSourceUrl(String url);

    /**
     * Возвращает список источников хабов.
     * @return список адресов источников хабов
     */
    public Set<String> getSourceUrls();

}
